import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)
/**
 * 在index.js 里设置我们需要的状态变量和方法。
 * 为了实现登录拦截器，我们需要一个记录token的变量量。
 * 同时为了全局使用用户信息，我们还需要一个记录用户信息的变量。
 * 还需要改变变量值的mutations。
 */
export default new Vuex.Store({
  state: {
    token: sessionStorage.getItem("token"),
    user: JSON.parse(sessionStorage.getItem("user"))
  },

  mutations: {
    // set
    SET_TOKEN: (state, token) => {
      state.token = token
      sessionStorage.setItem("token", token)
    },
    SET_USER: (state, user) => {
      state.user = user
      sessionStorage.setItem("user", JSON.stringify(user))
    },
    REMOVE_INFO : (state) => {
      state.token = ''
      state.user = {}
      sessionStorage.setItem("token", '')
      sessionStorage.setItem("user", JSON.stringify(''))
    }
  },
  getters: {
  },
  actions: {
  },
  modules: {
  }
})
